www.gusucode.com > Matlab在化学工程中的应用 > Matlab在化学工程中的应用/实用化工计算机模拟-Matlab在化学工程中的应用/Examples/Chapter 3/MultipleStateCSTR.m
function MultipleStateCSTR % 多稳态CSTR反应器 % Operation of a Cooled Exothermic CSTR % % Author: HUANG Huajiang % Copyright 2003 UNILAB Research Center, % East China University of Science and Technology, Shanghai, PRC % $Revision: 1.0 $ $Date: 2003/06/19 $ clear all clc global F0 F CA0 Kc T0 k0 dH rho rhoJ Cp VJ CPJ U Ah FJ TJ0 V % parameter values TJ0 = 530; T0 = 530; F0 = 40; F = 40; FJ = 49.9; CA0 = 0.55; V = 48; VJ = 12; E = 30000; U = 150; Cp = 0.75; rho = 50; k0 = 7.08e10; R = 1.9872; Ah = 250; dH = -30000; % dH:反应热 CPJ = 1.0; rhoJ = 62.3; % initial conditions Ti = T0:10:T0+200; n =length(Ti); for i = 1:n sol = fsolve(@Equations,[CA0,Ti(i),TJ0]); y{i} = sol; end % 去掉重复解即得到多稳态解 for i=1:n sy(i) = sum(y{i}); end [sy,i1] = sort(sy); dsy = diff(sy); i2 = find(abs(dsy)>1e-6); i2 = [1 i2+1]; fprintf('\n有%d%s',length(i1(i2)),'个稳态解(CA,T,TJ0):') y{i1(i2)} % 多稳态解: % ------------------------------------------------------------------ function f = Equations(y) global F0 F CA0 Kc T0 k0 dH rho rhoJ Cp VJ CPJ U Ah FJ TJ0 V CA = y(1); T = y(2); TJ = y(3); k = k0*exp(-30000/(1.9872*T)); Q = U*Ah*(T-TJ); f1 = F0*CA0 - F*CA - V*k*CA; f2 = F0*T0-F*T-(dH*V*k*CA+Q)/(rho*Cp); f3 = FJ*(TJ0-TJ)+Q/(rhoJ*CPJ); f = [f1; f2; f3];